package com.bainuo.doctor.common.image_support.imghandle.view;

import com.bainuo.doctor.common.image_support.imghandle.Bean.ImageUploadInfo;

import java.util.List;

/**
 * Created by faraway on 18/2/17.
 */
public interface IImagePickerViewListener {

    /**
     * 所有图片上传完成
     *
     * @param infos 全部图片
     */
    void onImagesUploadSuccess(List<ImageUploadInfo> infos);

    /**
     * 所有的图片任务都已经执行完 但并没有全部上传成功
     *
     * @param infos
     */
    void onImagesUploadFailed(List<ImageUploadInfo> infos);

    /**
     * 单张图片上传完成
     *
     * @param info
     */
    void onImageUploadSuccess(ImageUploadInfo info);

    /**
     * 单张图片上传失败
     *
     * @param info
     */
    void onImageUploadFailed(ImageUploadInfo info);


    /**
     * 选择图片点击回调
     */
    boolean onImageSelect();

    /**
     * 已经选择了图片回调
     *
     * @param infos 返回当次选择的把有图片
     */
    void onImageSelected(List<ImageUploadInfo> infos);


    /**
     * 删除图片item  如果删除后的剩余全部成功则会回调成功接口
     *
     * @param infos 删除后的图片信息
     */
    void onImageDelete(List<ImageUploadInfo> infos);


    /**
     * 点击图片item
     *
     * @param infos 全部图片信息
     * @param index 当前点击图片的索引
     */
    void onImageClick(List<ImageUploadInfo> infos, int index);

    /**
     * 图片重传
     *
     * @param info
     */
    void onImageUploadRetry(ImageUploadInfo info);
}
